﻿#include "widget.h"

#include <QApplication>
#include <QDebug>
#include <QMessageBox>
#include <QSharedMemory>
/**
 * @brief win版小苔云检测升级检测
 * @author sammy
 * @param argv[1] 老版本号; argv[2] 新版本号; argv[3] 新版本程序升级地址
 **/
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QSharedMemory sharedMemory(qApp->applicationName());    // 设置绑定的共享内存段的key值
    if(sharedMemory.attach()){
        QMessageBox::warning(nullptr, "Error", u8"已经有程序在运行");
        return 1;
    }else{
        sharedMemory.create(1); // 创建1byte大小的共享内存段
    }
    if(argc<2)
    {
        QMessageBox::warning(NULL,u8"警告",u8"非正常打开方式，程序将退出");
        QApplication::quit();
        return 0;
    }

    Widget w;
    w.oldVersion = argv[1];
    w.newVersion = argv[2];
    w.appUrl = argv[3];
    w.setWindowFlags(w.windowFlags() & ~Qt::WindowMaximizeButtonHint & ~Qt::WindowMinimizeButtonHint & ~Qt::WindowCloseButtonHint);
    w.setWindowTitle(u8"小苔云升级助手：");
    w.show();

    a.exec();
    // 完成后分离共享内存
    sharedMemory.detach();
    return 0;

}
